package com.city.java.abnormal_records.service;

import com.city.java.abnormal_records.pojo.entity.AbnormalRecords;
import com.city.java.base.response.JsonResult;
import com.city.java.base.utils.PageVO;

import java.util.List;

/**
 * 异常记录服务接口
 */
public interface AbnormalRecordService {
    /**
     * 添加异常记录
     * @param abnormalRecord 异常记录对象
     * @return 操作结果
     */
    JsonResult addAbnormalRecord(AbnormalRecords abnormalRecord);

    /**
     * 根据异常记录ID获取异常记录
     * @param abnormalId 异常记录ID
     * @return 异常记录信息
     */
    JsonResult getAbnormalRecordById(Long abnormalId);

    /**
     * 根据异常类型获取异常记录列表
     * @param abnormalType 异常类型
     * @return 异常记录列表
     */
    JsonResult getAbnormalRecordsByAbnormalType(String abnormalType);

    /**
     * 获取所有异常记录列表
     * @return 异常记录列表
     */
    JsonResult getAllAbnormalRecords();

    /**
     * 根据异常记录ID删除异常记录
     * @param abnormalId 异常记录ID
     * @return 操作结果
     */
    JsonResult deleteAbnormalRecordById(Long abnormalId);

    /**
     * 更新异常记录信息
     * @param abnormalRecord 异常记录对象
     * @return 操作结果
     */
    JsonResult updateAbnormalRecord(AbnormalRecords abnormalRecord);

    PageVO<AbnormalRecords> select(AbnormalRecords abnormalRecords);
}
